﻿//using System;
using System.Collections.Generic;
using KKSG;
using UILib;
using UnityEngine;
using XMainClient.UI.UICommon;
using XUpdater;
using XUtliPoolLib;

namespace XMainClient.UI
{
	// Token: 0x0200173A RID: 5946
	internal class DragonCrusadeDlg : DlgBase<DragonCrusadeDlg, DragonCrusadeBehavior>
	{
		// Token: 0x170037D0 RID: 14288
		// (get) Token: 0x0600F596 RID: 62870 RVA: 0x003777A8 File Offset: 0x003759A8
		public override string fileName
		{
			get
			{
				return "DragonCrusade/DragonCrusadeDlg";
			}
		}

		// Token: 0x170037D1 RID: 14289
		// (get) Token: 0x0600F597 RID: 62871 RVA: 0x003777C0 File Offset: 0x003759C0
		public override bool hideMainMenu
		{
			get
			{
				return true;
			}
		}

		// Token: 0x170037D2 RID: 14290
		// (get) Token: 0x0600F598 RID: 62872 RVA: 0x003777D4 File Offset: 0x003759D4
		public override bool pushstack
		{
			get
			{
				return true;
			}
		}

		// Token: 0x170037D3 RID: 14291
		// (get) Token: 0x0600F599 RID: 62873 RVA: 0x003777E8 File Offset: 0x003759E8
		public override bool autoload
		{
			get
			{
				return true;
			}
		}

		// Token: 0x170037D4 RID: 14292
		// (get) Token: 0x0600F59A RID: 62874 RVA: 0x003777FC File Offset: 0x003759FC
		public bool isHallUI
		{
			get
			{
				return XSingleton<XGame>.singleton.CurrentStage.Stage == EXStage.Hall;
			}
		}

		// Token: 0x170037D5 RID: 14293
		// (get) Token: 0x0600F59B RID: 62875 RVA: 0x00377820 File Offset: 0x00375A20
		public override bool fullscreenui
		{
			get
			{
				return true;
			}
		}

		// Token: 0x170037D6 RID: 14294
		// (get) Token: 0x0600F59C RID: 62876 RVA: 0x00377834 File Offset: 0x00375A34
		public override int sysid
		{
			get
			{
				return 50;
			}
		}

		// Token: 0x0600F59D RID: 62877 RVA: 0x00377848 File Offset: 0x00375A48
		protected override void OnLoad()
		{
			base.OnLoad();
			this.mDoc = (XSingleton<XGame>.singleton.Doc.GetXComponent(XDragonCrusadeDocument.uuID) as XDragonCrusadeDocument);
			bool flag = this.mDragonExpeditionLoadTask == null;
			if (flag)
			{
				this.mDragonExpeditionLoadTask = new LoadCallBack(this.LoadFinish);
			}
		}

		// Token: 0x0600F59E RID: 62878 RVA: 0x0037789B File Offset: 0x00375A9B
		protected override void Init()
		{
			base.Init();
			base.uiBehaviour.goLoadingTxt.SetText(XStringDefineProxy.GetString("DragonLoadMessage"));
		}

		// Token: 0x0600F59F RID: 62879 RVA: 0x003778C0 File Offset: 0x00375AC0
		private void LoadFinish(Object obj, object cbOjb)
		{
			bool flag = !base.IsLoaded();
			if (!flag)
			{
				this.goDragonExpedition = (obj as GameObject);
				this.LoadPrefabSyncDone();
			}
		}

		// Token: 0x0600F5A0 RID: 62880 RVA: 0x003778F0 File Offset: 0x00375AF0
		public override void RegisterEvent()
		{
			base.RegisterEvent();
			this.m_uiBehaviour.slideSprite.RegisterSpriteDragEventHandler(new SpriteDragEventHandler(this.OnMonsterDrag));
			this.m_uiBehaviour.slideSprite.RegisterSpriteClickEventHandler(new SpriteClickEventHandler(this.OnMouseClick));
			base.uiBehaviour.m_Help.RegisterClickEventHandler(new ButtonClickEventHandler(this.OnHelpClicked));
			this.m_uiBehaviour.m_myRankSpr.RegisterSpriteClickEventHandler(new SpriteClickEventHandler(this.OnRankInfo));
			base.uiBehaviour.m_closed.RegisterClickEventHandler(new ButtonClickEventHandler(this.OnClose));
			base.uiBehaviour.m_leftBtn.ID = 1UL;
			base.uiBehaviour.m_rightBtn.ID = 2UL;
		}

		// Token: 0x0600F5A1 RID: 62881 RVA: 0x003779BC File Offset: 0x00375BBC
		public bool OnHelpClicked(IXUIButton button)
		{
			DlgBase<XCommonHelpTipView, XCommonHelpTipBehaviour>.singleton.ShowHelp(XSysDefine.XSys_DragonCrusade);
			return true;
		}

		// Token: 0x0600F5A2 RID: 62882 RVA: 0x003779DC File Offset: 0x00375BDC
		protected override void OnHide()
		{
			base.OnHide();
			bool flag = this.ixDragonExpedition != null;
			if (flag)
			{
				this.ixDragonExpedition.GetDragonCamera().enabled = false;
			}
		}

		// Token: 0x0600F5A3 RID: 62883 RVA: 0x00377A14 File Offset: 0x00375C14
		protected override void OnShow()
		{
			base.OnShow();
			base.Alloc3DAvatarPool("DragonCrusadeDlg");
			bool flag = this.ixDragonExpedition != null;
			if (flag)
			{
				this.ixDragonExpedition.GetDragonCamera().enabled = true;
			}
		}

		// Token: 0x0600F5A4 RID: 62884 RVA: 0x00377A58 File Offset: 0x00375C58
		protected override void OnUnload()
		{
			this.mDoneFinish = false;
			this.mSyncLoading = false;
			bool flag = this._FxFirework != null;
			if (flag)
			{
				XSingleton<XFxMgr>.singleton.DestroyFx(this._FxFirework, true);
			}
			this._FxFirework = null;
			this.DeleteAvatar();
			this.UnloadPrefab();
			foreach (KeyValuePair<uint, GameObject> keyValuePair in this.listBillBoards)
			{
				XSingleton<XResourceLoaderMgr>.singleton.UnSafeDestroy(keyValuePair.Value, true, false);
			}
			this.listBillBoards.Clear();
			base.OnUnload();
		}

		// Token: 0x0600F5A5 RID: 62885 RVA: 0x00377B14 File Offset: 0x00375D14
		public override void StackRefresh()
		{
			base.StackRefresh();
			base.Alloc3DAvatarPool("DragonCrusadeDlg");
			bool flag = this.ixDragonExpedition != null;
			if (flag)
			{
				this.ixDragonExpedition.GetDragonCamera().enabled = true;
			}
		}

		// Token: 0x0600F5A6 RID: 62886 RVA: 0x00377B56 File Offset: 0x00375D56
		public override void OnXNGUIClick(GameObject obj, string path)
		{
			base.OnXNGUIClick(obj, path);
		}

		// Token: 0x0600F5A7 RID: 62887 RVA: 0x000FEEFC File Offset: 0x000FD0FC
		private void LoadPrefab()
		{
		}

		// Token: 0x0600F5A8 RID: 62888 RVA: 0x00377B62 File Offset: 0x00375D62
		private void UnloadPrefab()
		{
			this.ixDragonExpedition = null;
			XResourceLoaderMgr.SafeDestroy(ref this.goDragonExpedition, true);
		}

		// Token: 0x0600F5A9 RID: 62889 RVA: 0x00377B7C File Offset: 0x00375D7C
		protected void OnMonsterDrag(IXUIButton button, Vector2 delta)
		{
			bool flag = button.ID == 1UL;
			if (flag)
			{
				delta = Vector2.one * (float)Screen.width;
			}
			else
			{
				delta = Vector2.one * (float)(-(float)Screen.width);
			}
			bool flag2 = this.ixDragonExpedition == null;
			if (!flag2)
			{
				this.ixDragonExpedition.Drag(delta.x);
			}
		}

		// Token: 0x0600F5AA RID: 62890 RVA: 0x00377BE4 File Offset: 0x00375DE4
		protected bool OnMonsterDrag(Vector2 delta)
		{
			bool flag = this.ixDragonExpedition == null;
			bool result;
			if (flag)
			{
				result = true;
			}
			else
			{
				this.ixDragonExpedition.Drag(delta.x);
				result = true;
			}
			return result;
		}

		// Token: 0x0600F5AB RID: 62891 RVA: 0x00377C1C File Offset: 0x00375E1C
		protected void OnMouseClick(IXUISprite sp)
		{
			bool flag = this.ixDragonExpedition == null;
			if (!flag)
			{
				GameObject gameObject = this.ixDragonExpedition.Click();
				bool flag2 = gameObject != null;
				if (flag2)
				{
					this.OnGateInfo(gameObject.name);
				}
			}
		}

		// Token: 0x0600F5AC RID: 62892 RVA: 0x00377C60 File Offset: 0x00375E60
		private bool OnClose(IXUIButton btn)
		{
			this.SetVisible(false, true);
			XSingleton<XTutorialHelper>.singleton.DragonCrusadeOpen = false;
			return true;
		}

		// Token: 0x0600F5AD RID: 62893 RVA: 0x00377C88 File Offset: 0x00375E88
		private void OnGateInfo(string gatename)
		{
			DlgBase<DragonCrusadeGateDlg, DragonCrusadeGateBehavior>.singleton.SetVisibleWithAnimation(true, null);
			for (int i = 0; i < XDragonCrusadeDocument._DragonCrusageGateDataInfo.Count; i++)
			{
				DragonCrusageGateData dragonCrusageGateData = XDragonCrusadeDocument._DragonCrusageGateDataInfo[i];
				bool flag = dragonCrusageGateData.expData.ResName == gatename;
				if (flag)
				{
					DlgBase<DragonCrusadeGateDlg, DragonCrusadeGateBehavior>.singleton.SetVisible(true, true);
					DlgBase<DragonCrusadeGateDlg, DragonCrusadeGateBehavior>.singleton.FreshInfo(dragonCrusageGateData);
				}
			}
		}

		// Token: 0x0600F5AE RID: 62894 RVA: 0x00377CFA File Offset: 0x00375EFA
		public void OnRankInfo(IXUISprite uiSprite)
		{
			DlgBase<DragonCrusadeRankDlg, DragonCrusadeRankBehavior>.singleton.SetVisible(true, true);
			DlgBase<DragonCrusadeRankDlg, DragonCrusadeRankBehavior>.singleton.RefreshRankWindow(this.mDoc.oResRank);
		}

		// Token: 0x0600F5AF RID: 62895 RVA: 0x00377D20 File Offset: 0x00375F20
		public void RefreshRank(DERankRes oRes)
		{
			for (int i = 0; i < 3; i++)
			{
				Transform transform = base.uiBehaviour.transform.Find("Bg/MyRank/ScrollView/Tpl" + (i + 1).ToString());
				IXUILabel ixuilabel = transform.FindChild("Rank").GetComponent("XUILabel") as IXUILabel;
				IXUILabel ixuilabel2 = transform.FindChild("Name").GetComponent("XUILabel") as IXUILabel;
				IXUILabel ixuilabel3 = transform.FindChild("Reward").GetComponent("XUILabel") as IXUILabel;
				IXUISprite ixuisprite = transform.transform.FindChild("RankImage").GetComponent("XUISprite") as IXUISprite;
				DERank derank = (i < oRes.ranks.Count) ? oRes.ranks[i] : null;
				bool flag = derank != null;
				if (flag)
				{
					ixuilabel.SetText("No." + derank.rank);
					bool flag2 = i < 3;
					if (flag2)
					{
						ixuisprite.SetSprite("N" + (i + 1));
						ixuisprite.SetVisible(true);
						ixuilabel.SetVisible(false);
					}
					else
					{
						ixuisprite.SetVisible(false);
						ixuilabel.SetVisible(true);
					}
					ixuilabel2.SetText(derank.rolename);
					string text = string.Empty;
					for (int j = 0; j < derank.reward.Count; j++)
					{
						ItemBrief itemBrief = derank.reward[j];
						ItemList.RowData itemConf = XBagDocument.GetItemConf((int)itemBrief.itemID);
						text += itemBrief.itemCount.ToString();
					}
					ixuilabel3.gameObject.SetActive(true);
					ixuilabel3.SetText(text);
				}
				else
				{
					ixuisprite.SetVisible(false);
					ixuilabel2.SetText("");
					ixuilabel.SetText("");
					ixuilabel3.SetText("");
					ixuilabel3.gameObject.SetActive(false);
				}
			}
			bool flag3 = false;
			for (int k = 0; k < oRes.ranks.Count; k++)
			{
				DERank derank2 = oRes.ranks[k];
				bool flag4 = derank2.roleID == XSingleton<XAttributeMgr>.singleton.XPlayerData.RoleID;
				if (flag4)
				{
					flag3 = true;
					base.SetXUILable("Bg/MyRank/My/Rank", derank2.rank.ToString());
					base.SetXUILable("Bg/MyRank/My/Name", XSingleton<XAttributeMgr>.singleton.XPlayerData.Name);
					string text2 = string.Empty;
					for (int l = 0; l < derank2.reward.Count; l++)
					{
						ItemBrief itemBrief2 = derank2.reward[l];
						ItemList.RowData itemConf2 = XBagDocument.GetItemConf((int)itemBrief2.itemID);
						text2 += itemBrief2.itemCount.ToString();
					}
					base.SetXUILable("Bg/MyRank/My/Reward", text2);
					bool flag5 = k < 3;
					if (flag5)
					{
						base.uiBehaviour.mMyRank.SetActive(false);
					}
					break;
				}
			}
			bool flag6 = !flag3;
			if (flag6)
			{
				base.SetXUILable("Bg/MyRank/My/Rank", "");
				base.SetXUILable("Bg/MyRank/My/Name", "");
				base.SetXUILable("Bg/MyRank/My/Reward", "");
			}
		}

		// Token: 0x0600F5B0 RID: 62896 RVA: 0x003780A8 File Offset: 0x003762A8
		private void InitData()
		{
			for (int i = 0; i < XDragonCrusadeDocument._DragonCrusageGateDataInfo.Count; i++)
			{
				DragonCrusageGateData dragonCrusageGateData = XDragonCrusadeDocument._DragonCrusageGateDataInfo[i];
				Transform go = this.ixDragonExpedition.GetGO(dragonCrusageGateData.expData.ResName);
				bool flag = go == null;
				if (!flag)
				{
					GameObject value = null;
					bool flag2 = !this.listBillBoards.TryGetValue(dragonCrusageGateData.SceneID, out value);
					if (flag2)
					{
						value = this.RefreshGateEnter(dragonCrusageGateData, go.gameObject);
						this.listBillBoards.Add(dragonCrusageGateData.SceneID, value);
					}
					bool flag3 = XDragonCrusadeDocument.SectonChapterMax[dragonCrusageGateData.Chapter] == dragonCrusageGateData.expData.ChapterID[1];
					if (flag3)
					{
						GameObject gameObject = new GameObject("Snap");
						gameObject.transform.parent = go.gameObject.transform;
						bool flag4 = dragonCrusageGateData.expData.SnapPos != null && dragonCrusageGateData.expData.SnapPos.Length == 3;
						if (flag4)
						{
							gameObject.transform.localPosition = new Vector3(dragonCrusageGateData.expData.SnapPos[0], dragonCrusageGateData.expData.SnapPos[1], dragonCrusageGateData.expData.SnapPos[2]);
						}
						else
						{
							gameObject.transform.localPosition = new Vector3(0.1f, -0.26f, -0.49f);
						}
						gameObject.transform.localEulerAngles = new Vector3(0f, 20f, 0f);
						gameObject.transform.localScale = Vector3.one * 1.5f;
						IUIDummy snapShot = XSingleton<XUpdater.XUpdater>.singleton.XPlatform.AddComponent(gameObject, EComponentType.EUIDummy) as IUIDummy;
						this.CreateAvatar(snapShot, dragonCrusageGateData);
					}
				}
			}
		}

		// Token: 0x0600F5B1 RID: 62897 RVA: 0x00378284 File Offset: 0x00376484
		private void UpdateBillBoard()
		{
			foreach (KeyValuePair<uint, GameObject> keyValuePair in this.listBillBoards)
			{
				GameObject value = keyValuePair.Value;
				Vector3 normalized = (value.transform.position - this.ixDragonExpedition.GetDragonCamera().transform.position).normalized;
				value.transform.rotation *= Quaternion.LookRotation(normalized);
			}
		}

		// Token: 0x0600F5B2 RID: 62898 RVA: 0x0037832C File Offset: 0x0037652C
		private GameObject RefreshGateEnter(DragonCrusageGateData data, GameObject obj)
		{
			uint sceneID = data.SceneID;
			GameObject gameObject = XSingleton<XResourceLoaderMgr>.singleton.CreateFromPrefab("UI/Billboard/DragonCrusadeBillboard", true, false) as GameObject;
			XSingleton<UiUtility>.singleton.AddChild(obj, gameObject);
			gameObject.name = data.SceneID + "_" + data.expData.ResName;
			gameObject.transform.localScale = this.localDefaultScale;
			gameObject.transform.position = obj.transform.position;
			IXUILabel ixuilabel = gameObject.transform.Find("Name").GetComponent("XUILabel") as IXUILabel;
			ixuilabel.SetText(data.sceneData.Comment);
			return gameObject;
		}

		// Token: 0x0600F5B3 RID: 62899 RVA: 0x003783EC File Offset: 0x003765EC
		public void RefreshProgressFromNet()
		{
			bool flag = !this.mDoneFinish;
			if (!flag)
			{
				this.RefreshProgress();
			}
		}

		// Token: 0x0600F5B4 RID: 62900 RVA: 0x00378410 File Offset: 0x00376610
		public void RefreshProgressSync(System.Action<bool> done)
		{
			bool flag = this.ixDragonExpedition != null;
			if (flag)
			{
				bool flag2 = done != null;
				if (flag2)
				{
					done(true);
				}
				XSingleton<XTutorialHelper>.singleton.DragonCrusadeOpen = true;
			}
			else
			{
				bool flag3 = this.mSyncLoading;
				if (!flag3)
				{
					this.LoadPrefabSync(done);
				}
			}
		}

		// Token: 0x0600F5B5 RID: 62901 RVA: 0x00378460 File Offset: 0x00376660
		private void LoadPrefabSync(System.Action<bool> done)
		{
			base.uiBehaviour.goLoading.SetActive(true);
			this.mSyncLoading = true;
			this.mDoneFinish = false;
			this.mSyncDoneCallBack = done;
			XSingleton<XResourceLoaderMgr>.singleton.CreateFromPrefabAsync("Common/DragonExpedition", this.mDragonExpeditionLoadTask, null, true);
		}

		// Token: 0x0600F5B6 RID: 62902 RVA: 0x003784B0 File Offset: 0x003766B0
		public override void OnUpdate()
		{
			base.OnUpdate();
			bool flag = !this.mSyncLoading;
			if (!flag)
			{
				bool flag2 = this.mSyncLoading;
				if (flag2)
				{
				}
				bool flag3 = this.intertime > 0f;
				if (flag3)
				{
					this.intertime -= Time.deltaTime;
				}
				else
				{
					this.intertime = 0.5f;
					bool flag4 = this.mSyncLoading && this.mDoneFinish;
					if (flag4)
					{
						bool flag5 = this.mDragonExpeditionLoadTask != null;
						if (flag5)
						{
							this.mDragonExpeditionLoadTask = null;
						}
						base.uiBehaviour.goLoading.SetActive(false);
						this.mSyncLoading = false;
					}
				}
			}
		}

		// Token: 0x0600F5B7 RID: 62903 RVA: 0x0037855C File Offset: 0x0037675C
		private void LoadPrefabSyncDone()
		{
			this.ixDragonExpedition = (this.goDragonExpedition.GetComponent("XDragonExpedition") as IXDragonExpedition);
			this._FxFirework = XSingleton<XFxMgr>.singleton.CreateFx("Effects/FX_Particle/UIfx/UI_lzy_gk", null, true);
			this.InitData();
			this.RefreshProgress();
			this.mDoneFinish = true;
			bool flag = this.mSyncDoneCallBack != null;
			if (flag)
			{
				this.mSyncDoneCallBack(true);
			}
			this.mSyncDoneCallBack = null;
			bool flag2 = this.ixDragonExpedition != null;
			if (flag2)
			{
				this.ixDragonExpedition.GetDragonCamera().enabled = true;
			}
			XSingleton<XTutorialHelper>.singleton.DragonCrusadeOpen = true;
		}

		// Token: 0x0600F5B8 RID: 62904 RVA: 0x00378600 File Offset: 0x00376800
		private void RefreshProgress()
		{
			GameObject gameObject = null;
			for (int i = 0; i < XDragonCrusadeDocument._DragonCrusageGateDataInfo.Count; i++)
			{
				DragonCrusageGateData dragonCrusageGateData = XDragonCrusadeDocument._DragonCrusageGateDataInfo[i];
				DEProgress deProgress = dragonCrusageGateData.deProgress;
				bool flag = this.listBillBoards.TryGetValue(deProgress.sceneID, out gameObject);
				if (flag)
				{
					Transform transform = gameObject.transform.FindChild("StageConquered");
					Transform transform2 = gameObject.transform.Find("BossHP");
					IXUIProgress ixuiprogress = transform2.GetComponent("XUIProgress") as IXUIProgress;
					ixuiprogress.value = (float)deProgress.bossavghppercent / 100f;
					IXUILabel ixuilabel = gameObject.transform.Find("BossHP/Percent").GetComponent("XUILabel") as IXUILabel;
					ixuilabel.SetText(deProgress.bossavghppercent + "%");
					switch (dragonCrusageGateData.deProgress.state)
					{
					case DEProgressState.DEPS_FINISH:
					{
						transform2.localScale = Vector3.zero;
						transform.gameObject.SetActive(true);
						this.ixDragonExpedition.SetLimitPos(dragonCrusageGateData.expData.LimitPos);
						Transform go = this.ixDragonExpedition.GetGO(dragonCrusageGateData.expData.ResName);
						Renderer component = go.GetComponent<Renderer>();
						Material sharedMaterial = component.sharedMaterial;
						component.material = new Material(sharedMaterial)
						{
							shader = ShaderManager._transparentGrayMaskRNoLight,
							renderQueue = 3002
						};
						break;
					}
					case DEProgressState.DEPS_FIGHT:
					{
						this.ixDragonExpedition.SetLimitPos(dragonCrusageGateData.expData.LimitPos);
						this._FxFirework.Play(gameObject.transform.position, Quaternion.identity, Vector3.one, 1f);
						transform2.localScale = Vector3.one;
						transform.gameObject.SetActive(false);
						bool flag2 = gameObject.transform.parent != null;
						if (flag2)
						{
							this.ixDragonExpedition.Assign(gameObject.transform.parent.localPosition.x);
						}
						break;
					}
					case DEProgressState.DEPS_NOTOPEN:
						transform.gameObject.SetActive(false);
						transform2.localScale = Vector3.zero;
						break;
					}
				}
				base.SetXUILable("Bg/ChallengeCount/Value", string.Format("{0}/{1}", dragonCrusageGateData.leftcount, dragonCrusageGateData.allcount));
			}
		}

		// Token: 0x0600F5B9 RID: 62905 RVA: 0x00378880 File Offset: 0x00376A80
		private void CreateAvatar(IUIDummy snapShot, DragonCrusageGateData data)
		{
			XEntityStatistics.RowData byID = XSingleton<XEntityMgr>.singleton.EntityStatistics.GetByID(data.expData.BossID);
			XEntityPresentation.RowData byPresentID = XSingleton<XEntityMgr>.singleton.EntityInfo.GetByPresentID(byID.PresentID);
			bool flag = !this.m_AvatarDummys.ContainsKey((int)data.expData.ChapterID[0]);
			if (flag)
			{
				XDummy xdummy = XSingleton<X3DAvatarMgr>.singleton.CreateCommonEntityDummy(this.m_dummPool, byID.PresentID, snapShot, null, 25f);
				xdummy.Scale = byPresentID.UIAvatarScale;
				xdummy.EngineObject.SetLocalPRS(Vector3.zero, true, Quaternion.identity, true, Vector3.one * 0.3f, true);
				this.m_AvatarDummys.Add((int)data.expData.ChapterID[0], xdummy);
			}
		}

		// Token: 0x0600F5BA RID: 62906 RVA: 0x00378955 File Offset: 0x00376B55
		private void DeleteAvatar()
		{
			base.Return3DAvatarPool();
			this.m_AvatarDummys.Clear();
		}

		// Token: 0x04006A65 RID: 27237
		private XDragonCrusadeDocument mDoc = null;

		// Token: 0x04006A66 RID: 27238
		private GameObject goDragonExpedition = null;

		// Token: 0x04006A67 RID: 27239
		private IXDragonExpedition ixDragonExpedition = null;

		// Token: 0x04006A68 RID: 27240
		private XFx _FxFirework = null;

		// Token: 0x04006A69 RID: 27241
		private const int MAX_RANK = 3;

		// Token: 0x04006A6A RID: 27242
		public Dictionary<uint, GameObject> listBillBoards = new Dictionary<uint, GameObject>();

		// Token: 0x04006A6B RID: 27243
		private Vector3 localDefaultScale = new Vector3(-0.02f, 0.02f, 0.02f);

		// Token: 0x04006A6C RID: 27244
		private System.Action<bool> mSyncDoneCallBack = null;

		// Token: 0x04006A6D RID: 27245
		private bool mSyncLoading = false;

		// Token: 0x04006A6E RID: 27246
		private bool mDoneFinish = false;

		// Token: 0x04006A6F RID: 27247
		private float intertime = 0.5f;

		// Token: 0x04006A70 RID: 27248
		private LoadCallBack mDragonExpeditionLoadTask = null;

		// Token: 0x04006A71 RID: 27249
		private Dictionary<int, XDummy> m_AvatarDummys = new Dictionary<int, XDummy>();

		// Token: 0x02001A0A RID: 6666
		private class DragonExpeditionLoadTask
		{
			// Token: 0x06011111 RID: 69905 RVA: 0x004576BE File Offset: 0x004558BE
			public DragonExpeditionLoadTask(DragonCrusadeDlg dlg)
			{
				this.mDlg = dlg;
			}

			// Token: 0x06011112 RID: 69906 RVA: 0x004576D0 File Offset: 0x004558D0
			public void LoadFinish(Object obj)
			{
				bool flag = this.mDlg != null;
				if (flag)
				{
					this.mDlg.goDragonExpedition = (obj as GameObject);
					this.mDlg.LoadPrefabSyncDone();
					this.mDlg = null;
				}
			}

			// Token: 0x04008214 RID: 33300
			private DragonCrusadeDlg mDlg;
		}
	}
}
